/*
 * Biblioteca de funciones utiles de conversion de cadenas de caracteres
 * a ints y visceversa
 */

#include <iostream>
#include <sstream>
#include <string>
#include <stdio.h>
#include "Configuracion.h"

#ifndef UTILITARIA_H_
#define UTILITARIA_H_

#define SIZE_INT 4
#define MAX_LEC 512

typedef struct{
	char **rutas;
	int nrorutas;
	char *rutafolder;
}trutas;
typedef struct{
	char* clave;
	char* valor;
}tescritura;


class Util{
public:

	Util();

	//Dado un numero entero sin signo, lo codifica en una cadena de caracteres
	static char* intToChar(unsigned int n, unsigned int largo);

	//Dado un char* codificado con intToChar, devuelve un entero sin signo
	static unsigned int charToInt(char* a);

	static unsigned long charToLong(char* a);

	/*
	 * para transformar el filename_doc en su Id correspondiente.
	 * es un poco mas segura con respecto a la generacion de Id para un termino
	 * ya que todos los filename_doc de la coleccion son distintos, por ejemplo en el caso
	 * de que no pueden aparecer en la misma carpeta dos archivos con el mismo nombre.
	 * */
//	static tIdDoc generarIdDoc(std::string filename);

	~Util();
};

#endif
